//#include <iostream>
//
//using namespace std;
//
//template<class T> class SingleList;
//template<class T>
//class Node
//{
//public:	
//	Node(T t)
//	: element(t)
//	{
//		next = NULL;
//	}
//	
//private:
//	T element;
//	Node<T>* next;
//	friend class SingleList<T>; 
//};
//
//template <class T>
//class SingleList
//{
//public:
//	SingleList()
//	: first(NULL)
//	, n(0)
//	{}
//	
//	bool IsEmpty() const
//	{
//		return n == 0;
//	}
//	
//	int Length() const
//	{
//		return n;
//	}
//	
//	bool Insert(T x)
//	{
//		Node<T>* cur = first;
//		while(cur->next)
//		{
//			cur = cur -> next;
//		}
//		Node<T>* newnode = new Node<T>(x);
//		cur->next = newnode;
//		n++;
//		return true;
//	}
//	
//	void Output(ostream& out) const
//	{
//		Node<T>* cur = first;
//		while(cur)
//		{
//			out << cur -> element << endl;
//			cur = cur->next;
//		}
//	}
//	
//private:
//	Node<T>* first;
//	int n;
//};
//
//int main()
//{
//    SingleList<int> score;
//    int s;
//    for(int i=0; i<3; i++)
//    {
//        cin>>s;
//        score.Insert(s);
//    }
//    
//    if(!score.IsEmpty())
//    {
//        cout<<"There are "<<score.Length()<<" scores:"<<endl;
//        score.Output(cout);
//    }
//    
//    return 0;
//}
